import { useI18n } from '/@/hooks/web/useI18n';
import { BasicColumn, BasicTableProps, FormProps } from '/@/components/Table';
import { pmMaterialneedSelect } from '/@/api/material/need/pmMaterialneed';

const { t } = useI18n('sys.empUser');

const modalProps = {
  title: t('材料需求计划选择'),
};

const searchForm: FormProps = {
  baseColProps: { lg: 6, md: 8 },
  labelWidth: 80,
  showResetButton:false,
  schemas: [
    {
      label: t('工程编码'),
      field: 'projectno',
      component: 'Input',
    },
    {
      label: t('工程名称'),
      field: 'name',
      component: 'Input',
    },
    {
      label: t('分单编号'),
      field: 'fdno',
      component: 'Input',
    },
    {
      label: t('提交时间'),
      field: 'submittime',
      component: 'DatePicker',
      componentProps: {
        format: 'YYYY-MM-DD HH:mm',
        showTime: { format: 'HH:mm' },
      },
    },
    
  ],
};

const tableColumns: BasicColumn[] = [
  {
    title: t('工程编码'),
    dataIndex: 'projectno',
    key: 'a.projectno',
    sorter: true,
    width: 100,
    align: 'left',
    slot: 'firstColumn',
  },
  {
    title: t('工程名称'),
    dataIndex: 'name',
    key: 'a.name',
    sorter: true,
    width: 200,
    align: 'left',
  },
  {
    title: t('创建时间'),
    dataIndex: 'createtime',
    key: 'a.createtime',
    sorter: true,
    width: 130,
    align: 'center',
    ifShow: false,
  },
  {
    title: t('设计变更编号'),
    dataIndex: 'sno',
    key: 'a.sno',
    sorter: true,
    width: 100,
    align: 'left',
  },
  {
    title: t('分单编号'),
    dataIndex: 'fdno',
    key: 'a.fdno',
    sorter: true,
    width: 100,
    align: 'left',
  },
  {
    title: t('提交时间'),
    dataIndex: 'submittime',
    key: 'a.submittime',
    sorter: true,
    width: 150,
    align: 'center',
  },
  {
    title: t('需求时间'),
    dataIndex: 'needdate',
    key: 'a.needdate',
    sorter: true,
    width: 150,
    align: 'left',
  },
  // {
  //   title: t('ffile'),
  //   dataIndex: 'ffile',
  //   key: 'a.ffile',
  //   sorter: true,
  //   width: 130,
  //   align: 'left',
  //   ifShow: false,
  // },
  // {
  //   title: t('审核人'),
  //   dataIndex: 'checker',
  //   key: 'a.checker',
  //   sorter: true,
  //   width: 130,
  //   align: 'left',
  // },
  // {
  //   title: t('审核时间'),
  //   dataIndex: 'checktime',
  //   key: 'a.checktime',
  //   sorter: true,
  //   width: 150,
  //   align: 'center',
  // },
  // {
  //   title: t('计划/收货'),
  //   dataIndex: 'needorreceive',
  //   key: 'a.needorreceive',
  //   sorter: true,
  //   width: 130,
  //   align: 'center',
  //   ifShow: false,
  // },
  // {
  //   title: t('remark'),
  //   dataIndex: 'remark',
  //   key: 'a.remark',
  //   sorter: true,
  //   width: 130,
  //   align: 'left',
  //   ifShow: false,
  // },
  // {
  //   title: t('通知送货时间'),
  //   dataIndex: 'notedate',
  //   key: 'a.notedate',
  //   sorter: true,
  //   width: 150,
  //   align: 'center',
  // },
  // {
  //   title: t('送货备注'),
  //   dataIndex: 'noteremark',
  //   key: 'a.noteremark',
  //   sorter: true,
  //   width: 200,
  //   align: 'left',
  // },
  // {
  //   title: t('noteoper'),
  //   dataIndex: 'noteoper',
  //   key: 'a.noteoper',
  //   sorter: true,
  //   width: 130,
  //   align: 'left',
  //   ifShow: false,
  // },
  // {
  //   title: t('通知送货操作时间'),
  //   dataIndex: 'noteoptime',
  //   key: 'a.noteoptime',
  //   sorter: true,
  //   width: 130,
  //   align: 'center',
  //   ifShow: false,
  // },
  // {
  //   title: t('isreceive'),
  //   dataIndex: 'isreceive',
  //   key: 'a.isreceive',
  //   sorter: true,
  //   width: 130,
  //   align: 'center',
  //   ifShow: false,
  // },
  // {
  //   title: t('notepic'),
  //   dataIndex: 'notepic',
  //   key: 'a.notepic',
  //   sorter: true,
  //   width: 130,
  //   align: 'left',
  //   ifShow: false,
  // },
];

const tableProps: BasicTableProps = {
  api: pmMaterialneedSelect,
  beforeFetch: (params) => {
    params['isAll'] = true;
    return params;
  },
  columns: tableColumns,
  formConfig: searchForm,
  rowKey: 'id',
};

export default {
  modalProps,
  tableProps,
  itemCode: 'projectno',
  itemName: 'name',
};
